using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage;
using System.Xml.Serialization;


namespace SqEngine
{
    public struct SqEngineInfo
    {
        public static Version _assembly = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;

        public static string _name = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name;
        public static string _version = String.Format("{0}.{1}.{2} build {3}", _assembly.Major, _assembly.Minor, _assembly.Build, _assembly.Revision);
        public static string _full_version = String.Format("{0} {1}", _name, _version);
        public static string _author = "squid <squid@stormwind.it>";
        public static string _website = "http://squareengine.codeplex.com/";

    }


    public enum PresentationType
    {
        Normal,
        MoveVertFoward,
        MoveVertBack,
        MoveHorizForward,
        MoveHorizBack,
        MoveRandom,
        Typewriter
    }


    public enum Actions
    {
        //Actions for the player
        Player_Crouch,
        Player_Jump,
        Player_MoveForwards,
        Player_MoveBackwards,
        Player_StrafeRight,
        Player_StrafeLeft,
        Player_Run,
        Player_Shoot,
        Player_Menu,
        Player_Console,
        Player_Screenshot,
        Player_EnableTargets,
        Player_EnableHelp,
        Player_EnableScore,
        Player_Action,
        //MediaPlayer actions
        MediaPlayer_Play,
        MediaPlayer_Stop,
        MediaPlayer_Pause,
        MediaPlayer_Next,
        MediaPlayer_Back,
        MediaPlayer_Random,


        //Chat action
        Player_Chat,

        Debug_Wireframe,
        Debug_CollDrawer,



        Null_Action
    };

    public enum Posture
    {
        Standing,
        Crouching,
        Rising,
        Jumping
    };

    public enum WorldObjectType
    {
        #region Primitives
        SphereObject,
        TarrainObject,
        CapsuleObject,
        ReflectObject,
        BoxObject,
        StaticObject,        
        #endregion
        #region Extented
        PowerUpObject,
        MovableObject
        #endregion
    }

    public enum PowerupObjectType
    {
        LifePowerUp,
        ArmorPowerUp,
        AmmoPowerUp,
    }


    public enum MapType
    {
        Multiplayer,
        Deathmatch,
        SinglePlayer
    }



}